﻿using System;
using System.Collections.Generic;

namespace Rj_GsInsurance.Server.DataBaseContext.Entities
{
    public partial class RegTbPrepaidCard
    {
        public Guid Id { get; set; }
        /// <summary>
        /// 患者Id
        /// </summary>
        public long PatId { get; set; }
        /// <summary>
        /// 储值卡号
        /// </summary>
        public string CardNo { get; set; } = null!;
        /// <summary>
        /// 发卡机构
        /// </summary>
        public string? IssuedBy { get; set; }
        /// <summary>
        /// 卡类型，参见字典
        /// </summary>
        public int CardType { get; set; }
        /// <summary>
        /// 是否可充值
        /// </summary>
        public bool IsRechargeable { get; set; }
        /// <summary>
        /// 是否作为就诊卡
        /// </summary>
        public bool IsPatientCard { get; set; }
        /// <summary>
        /// 总金额
        /// </summary>
        public decimal TotalAmount { get; set; }
        /// <summary>
        /// 已使用金额
        /// </summary>
        public decimal UsedAmount { get; set; }
        /// <summary>
        /// 押金
        /// </summary>
        public decimal Deposit { get; set; }
        /// <summary>
        /// 可用余额
        /// </summary>
        public decimal Balance { get; set; }
        /// <summary>
        /// 注册时间
        /// </summary>
        public DateTime RegisterTime { get; set; }
        /// <summary>
        /// 生效时间
        /// </summary>
        public DateTime? EffectiveFromTime { get; set; }
        /// <summary>
        /// 失效时间
        /// </summary>
        public DateTime? EffectiveToTime { get; set; }
        /// <summary>
        /// 充值时间
        /// </summary>
        public DateTime? ReChargeTime { get; set; }
        /// <summary>
        /// 使用场景，参见字典
        /// </summary>
        public string UseScene { get; set; } = null!;
        /// <summary>
        /// 可支付大类项目，参见字典
        /// </summary>
        public string UseCategory { get; set; } = null!;
        public string? Remark { get; set; }
        public int OpCode { get; set; }
        public int CardStatus { get; set; }
        public int PayOrder { get; set; }
        public DateTime CreateTime { get; set; }
        public DateTime? UpdateTime { get; set; }
    }
}
